/**
 * @(#)IApkSimulatorService.java 2016年11月10日
 * Copyright(C) 2016 ZHEXIN IT CO.,LTD. All rights reserved.
 */
package org.jsbd.boss.service;

import java.util.List;

import org.jsbd.boss.domian.channel.ApkRetentConfig;
import org.jsbd.boss.domian.channel.ApkSimulator;
import org.jsbd.boss.domian.channel.VerInfo;

/**
 * apk和模拟器对应服务
 * 
 * @author <a href="mailto:xupengcheng@zhexinit.com" >徐鹏程</a>
 * @version 1.0.0
 */
public interface IApkSimulatorService {


	/**
	 * 
	 * getApkSimulators:获取apk和模拟器对应关系
	 * 
	 * @author <a href="mailto:xupengcheng@zhexinit.com" >徐鹏程</a>
	 * @param sysVer
	 *            系统版本
	 * @param taskVer
	 *            母版本
	 * @return
	 */
	public List<ApkSimulator> getApkSimulators(String sysVer);

	
	/**
	 * 
	 * selectAllRetentAPkList:查询所有需要做留存任务的apk信息
	 * 
	 * @author <a href="mailto:xupengcheng@zhexinit.com" >徐鹏程</a>
	 * @param taskVer
	 * @return
	 */
	public List<ApkRetentConfig> selectAllRetentAPkList();

	/**
	 * 
	 * insertApkInfoList:批量插入
	 * 
	 * @author <a href="mailto:xupengcheng@zhexinit.com" >徐鹏程</a>
	 * @param apkConfigList
	 */
	public void insertApkInfoList(List<ApkSimulator> apkConfigList);

	/**
	 * delApkSimulator:TODO 请描述该方法是做什么用途的
	 * 
	 * @author <a href="mailto:xupengcheng@zhexinit.com" >徐鹏程</a>
	 * @param apkSimulator
	 * @return
	 */
	public int delApkSimulator(ApkSimulator apkSimulator);

	/**
	 * 
	 * @return
	 */
	public List<ApkSimulator> getAllApkSimulators();

	/**
	 * 
	 * selectVers:查询mark对应的版本
	 * 
	 * @author <a href="mailto:xupengcheng@zhexinit.com" >徐鹏程</a>
	 * @param mark
	 * @param verType
	 *            1 系统版本 其他的任务版本
	 * @return
	 */
	public List<VerInfo> selectVers(String mark, String verType);

	List<VerInfo> selectVers(Long taskId);

	public List<ApkSimulator> getVers(String mark);
	
	public String getVer(String mark);


	/**
	 * updateApkVers:更新缓存apk的版本号
	 * @author <a href="mailto:xupengcheng@zhexinit.com" >徐鹏程</a>
	 */
	public void updateApkVers();
}
